package com.shen.llmtool.modules.deepseek.vo;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 本次chat请求使用的 Token 信息
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class UsageVo {
    /**
     * 用户的输入转换成 Token 后的长度
     */
    @JsonAlias({"promptTokens", "prompt_tokens"})
    private Integer promptTokens;
    /**
     * 模型生成回复转换为 Token 后的长度
     */
    @JsonAlias({"completionTokens", "completion_tokens"})
    private Integer completionTokens;

    /**
     * prompt_tokens与completion_tokens的总和
     */
    @JsonAlias({"totalTokens", "total_tokens"})
    private Integer totalTokens;

}
